// 显示内容
function showPage(page, data) {
	console.log(page, data);
}

// Page备忘录类
var Page = function() {
	// 信息缓存对象
	var cache = {};
	/**
	 * 主函数
	 * @param   page 页码
	 * @param   fn   成功回调函数
	 */
	return function(page, fn) {
		// 判断该页数据是否在缓存中
		if (cache[page]) {
			// 恢复到该页状态，显示该页内容
			showPage(page, cache[page]);
			// 执行成功回调函数
			typeof fn === 'function' && fn();
		} else {
			// 若缓存Cache中无该页数据
			$.post('./data/getNewsData.php', {
				// 请求携带数据 page 页码
				page: page
			}, function(res) {
				// 成功回调
				if (res.errNo == 0) {
					// 显示该页数据
					showPage(page, res.data);
					// 将该页数据写入缓存
					cache[page] = res.data;
					// 执行成功回调函数
					typeof fn === 'function' && fn();
				} else {
					// 处理异常
				}
			});
		}
	}
}

// 使用
$('#next_page').click(function() {
	var $news = $('#news_content'),
		page = $news.data('page');
	// 获取并显示新闻
	Page(page, function() {
		// 修正新闻内容元素当前页码
		$news.data('page', page + 1);
	});
});